Cloud computing is the use of computing resources (hardware and software) which are available in a remote location and accessible over a network, such as the Internet. Users are able to buy these computing resources (including storage and computing power) as a utility on demand. Cloud computing entrusts remote services with a user's data, software and computation. Use of virtual computing resources can provide a number of advantages including cost advantages and/or ability to adapt rapidly to changing computing resource needs.
Network updates for computing resources in a network environment (e.g., a cloud computing environment) can be implemented using a group deployment strategy, making changes on the network as a whole. Under this approach, changes can include copying configuration information directly onto network devices (e.g., through a user interface), and manually evaluating the results and whether the updates either worked or failed as a whole. Accordingly, to recover from failure, the updates would have to be rolled back. In less complex networks, this approach may be ideal in view of the reduced sophistication of the network and the demands placed on the network. However, new approaches that account for making changes within a network in view of network technology, network complexity, and network demand may be desirable.